Deutsche Anleitung

zu

DATABASE

Version 2.3

\begin{matrix}c \\ ◯ \end{matrix} Copyright 1993 by Jörg Richter Dresdener Straße 21 2150 Buxtehude

Eine Dateiverwaltung für die AMIGA Familie.

Das Programm DataBase ist urheberrechtlich geschützt.

CONTENTS  DataBase Anleitung 1

Inhaltsverzeichnis

1 Information 2 1.1 Vorwort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.3 Shareware & Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.4 Systemanforderungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.5 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.6 Programmaufruf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.7 Voreinstellungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Programmfunktionen 4 2.1 Allgemeines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.2 Funktionen der unteren Gadget-Reihe . . . . . . . . . . . . . . . . . . . . . . 4

2.2.1 New — Anlegen einer neuen Maske . . . . . . . . . . . . . . . . . . . . 4 2.2.2 Open — Laden einer Datei . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2.3 Save — Speichern einer Datei . . . . . . . . . . . . . . . . . . . . . . . 6 2.2.4 Save as — Speichern einer Datei als . . . . . . . . . . . . . . . . . . . 6 2.2.5 Print — Drucken von Datensätzen . . . . . . . . . . . . . . . . . . . . 6 2.2.6 Sort — Sortieren einer Datei . . . . . . . . . . . . . . . . . . . . . . . 7 2.2.7 Search — Suchen eines Eintrags . . . . . . . . . . . . . . . . . . . . . 7 2.2.8 Prev — Suche weiter rückwärts . . . . . . . . . . . . . . . . . . . . . . 8 2.2.9 Next — Suche weiter vorwärts . . . . . . . . . . . . . . . . . . . . . . 8 2.2.10 Info — Informationen . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2.11 Quit — Programmende . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2.3 Funktionen der oberen Gadget-Reihe . . . . . . . . . . . . . . . . . . . . . . . 8 2.3.1 ”Bewegen in der Datei“ . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.3.2 ”Indexsprung“ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.3.3 ”Moduswahlschalter“ — Data, Mask, Image, Prefs . . . . . . . . . . . 9 2.3.4 Modus: Data — Funktionen für die Datensätze . . . . . . . . . . . . . 9 2.3.5 Modus: Mask — Funtionen für die Maske . . . . . . . . . . . . . . . . 10 2.3.6 Modus: Image — Funktionen für das Hintergrundbild . . . . . . . . . 10

2.4 Menüs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.4.1 Project (Ergänzungen) . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.4.2 Data (Ergänzungen) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.4.3 Mask (Ergänzungen) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.4.4 Preferences — Voreinstellungen . . . . . . . . . . . . . . . . . . . . . . 13

2.5 Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

A Mathematische Formeln 15

B Texteingabefunktionen 16

C Druckersteuerbefehle 17

Information  DataBase Anleitung 2

1 Information

1.1 Vorwort

Das Programm DataBase ist Shareware. Die Demoversion^{1} darf frei kopiert und weitergegeben werden. Die registrierte Version ist urheberrechtlich geschützt und es darf nur eine Sicherheitskopie gemacht werden.

Es ist ein nicht unerheblicher Aufwand eine völlig dynamische Dateiverwaltung zu programmieren, und ich glaube, die Sharewaregebühr ist durchaus gerechtfertigt.

Trotz Bemühungen und einer langen Testphase ist dieses Programm sicher nicht fehlerfrei, da die notwendige Datenstruktur sehr komplex ist. Falls Fehler auftreten, bitte ich diese so genau wie möglich zu beschreiben und mir zuzusenden. Gleiches gilt für Kritik, Anregungen, etc. Um alle Funktionen des Programms nutzen zu können, muß diese Anleitung gelesen werden. ◇

1.2 Einleitung

Für den Amiga existieren zwar viele Video- oder Adreßverwaltungen, aber alle sind nur für einen Bereich nutzbar und in ihrer Maske nicht veränderbar. So will man also z.B. Videofilme und Adressen verwalten, muß man sich in zwei Programme einarbeiten. Werden nun aber andere/weitere Felder in der Eingabemaske benötigt, sind diese Programme nicht mehr verwendbar. Bei DataBase hingegen ist die Maske völlig frei konfigurierbar, d.h. die Anzahl, die Position, die Namen, etc. der Felder sind frei wählbar. Natürlich können alle Attribute und die Maske später wieder geändert werden. Daraus ergeben sich ein Vielzahl von Nutzungsmöglichkeiten; z.B. können auch Banküberweisungen sehr bequem und einfach erstellt und verwaltet werden.

Weiterhin besteht die Möglichkeit, ein IFF-Bild in den Hintergrund des Fensters zu legen. Für den Ausdruck werden Druckmasken verwendet, so daß auch hier eine völlig freie Gestaltung zugelassen ist und aus einer Datei mittels verschiedener Druckmasken Daten für verschiedene Bereiche zur Verfügung stehen (z.B. Etikett und Telefonverzeichnis aus einer Adressendatei).

1.3 Shareware & Updates

Falls ich Sie von DataBase überzeugt habe und Sie die Vollversion erwerben möchten, senden oder überweisen Sie mir bitte die Sharewaregebühr in Höhe von DM 20,-. Mit der Vollversion erhalten Sie eine gedruckte Anleitung und eine Datei mit allen PLZ-, Ort- und Vorwahl-Angaben aus Westdeutschland. (Mitte des Jahres soll ein gesamtdeutsches Verzeichnis erscheinen)

Jörg Richter

Dresdener Straße 21 2150 Buxtehude (email: Joerg.Richter@arbi.informatik.uni-oldenburg.de)

1Abspeichern in der Demoversion nicht möglich

1.4 Systemanforderungen  DataBase Anleitung 3

Stadtsparkasse Buxtehude Konto Nr.: 802298 BLZ : 241 520 80

Sobald eine neue Version verfügbar ist, werden Sie benachrichtigt. Diese kann dann für DM 4,- in Briefmarken bezogen werden.

1.4 Systemanforderungen

DataBase benötigt mindestens Kickstart 2.04. Workbench 2.1 und Kickstart/Workbench 3.0 bereiten keine Probleme.

512 KByte Hauptspeicher reichen grundsätzlich aus. Es werden jedoch immer alle Datensätze im Speicher gehalten, so daß bei vielen Datensätzen entsprechend Hauptspeicher benötigt wird. Ein Datensatz einer normalen Adressenmaske belegt etwa 500 Bytes. Also reichen 250 KByte Speicher für 500 Adressen. Der benötigte Platz hängt jedoch von der Maske und den einzelnen Feldlängen ab. Eine Festplatte ist nicht zwingend erforderlich.

1.5 Installation

Die reqtools.library muß sich im LIBS: Verzeichnis befinden.

(Shell-Befehl : `copy DB Demo:libs/reqtools.library libs:' bzw.
             `copy DataBase:libs/reqtools.library libs:')

Optional können Fixed-width (→ New) Schriften im System ergänzt werden.

(Shell-Befehl: `copy DB Demo:fonts/#?  fonts:  all' bzw.
            `copy DataBase:fonts/#?  fonts:  all')

Diese Installationen können auch mittels der beigefügten Skripte erledigt werden. Das Programm selber kann an einem beliebigen Platz stehen. Ich empfehle aber wegen der Datendateien und Druckmasken ein eigenes Verzeichnis.

1.6 Programmaufruf

Das Programm kann von der Workbench oder der Shell aufgerufen werden. Optional ist die Angabe einer Datei als Argument, die sofort nach dem Start geladen wird. SYNTAX: DB [datei] Alle Voreinstellungen werden über die ToolTypes gewählt bzw. in diesen gespeichert. Es wird ein PublicScreen namens ’DataBase’ geöffnet, auf dem z.B. durch

CON:0/0/640/200/Title/WAIT/CLOSE/SCREENDataBase ein Fenster (z.B. eine Shell) geöfnnet werden kann. Läuft DataBase bereits, und wird es ein

1.7 Voreinstellungen  DataBase Anleitung 4

zweites Mal gestartet, erscheint ein Requester mit den Möglichkeiten Pop to front, Kill und Cancel. Pop to front holt den alten Screen von Database nach vorne, Kill^{2} schließt den alten Screen und Cancel bricht den zweiten Aufruf ab. (→ Print)

1.7 Voreinstellungen

Die Voreinstellungen werden in den ToolTypes^{3} des Programmicons gewählt und gespeichert. Deshalb benötigt das Programm unbedingt ein Icon.

Siehe Tabelle: Mögliche ToolType Einträge

2 Programmfunktionen

2.1 Allgemeines

Viele Funktionen des Programms können über die Tastatur ausgeführt werden. Die entsprechenden Tasten sind unterstrichen und zusammen mit der rechten A Taste zu drücken. Einige Funktionen sind sogar nur über Tastatur erreichbar.

Die Funktionen bei der Texteingabe entsprechen den AmigaOS 2.0 Standard und können im Anhang A dieser Anleitung nachgeschlagen werden. Ich empfehle dies, da diese Funktionen die Dateneingabe sehr erleitern können.

2.2 Funktionen der unteren Gadget-Reihe

2.2.1 New — Anlegen einer neuen Maske

Nach einer eventuellen Sicherheitsabfrage muß eine Schrift (Font) ausgewählt werden. Die Maskenfelder und die Daten werden in dieser Schrift dargestellt. Es können nur sogenannte fixed width fonts^{4} verwendet werden. Diese Art von Schriften erscheinen auch nur im Requester. Eine spätere Änderung ist möglich.

Anschließend wird mit der Maus die Postion für das Feld festgelegt. Dabei helfen die Mauskoordinaten links unter dem Fenster. Nun folgt die Eingabe des Feldnamens und anschliessend eine Abfrage, ob die Daten rechts vom Feldnamen oder unterhalb des Feldnamens (linksbündig mit den Feldnamen) eingetragen werden sollen.

Als nächste Eingabe folgt die maximale Eintragslänge, d.h. die maximale Anzahl von Zeichen bei diesem Feld. Dieser Wert muß zwichen 1 und 99 liegen.

Jedes Feld kann mit einem ”default entry“ (Standardeintrag) versehen werden. Dieser Eintrag ist also der übliche Eintrag bei der Dateneingabe und somit wird das gleiche Eintippen bei vielen Datensätzen erspart. (z.B. die PLZ, Ort und Telefonvorwahl in einer Adressendatei, wenn die meisten Adressen aus einer Stadt kommen.)

2nur der Screen wird geschlossen, der Process wird nicht beendet und der belegte Speicher wird nicht freigeben. Deshalb sollte diese Funktion nur verwendet werden, wenn sich der Screen nicht mehr anders schliessen läßt.

3Erreichen der ToolTypes von der Workbench: Klick auf das Programm und dann Menü Icons→Information anwählen

4Schriften mit einer festen Zeichenbreite

2.2 Funktionen der unteren Gadget-Reihe  DataBase Anleitung 5

Tabelle: Mögliche ToolTypes Einträge

(Default wird verwendet falls Eintrag nicht vorhanden)

Eintrag  Erklärung
DB PATTERN  Muster für den Dateirequester beim Laden/Speichern

Default: DB PATTERN=#?.db (Nur Dateien mit der Endung .db werden angezeigt)

PRT PATTERN  Muster für den Dateirequester bei Auswahl der Druckmaske

Default: PRT PATTERN=#?.prt (Nur Dateien mit der Endung .prt werden angezeigt)

IMAGE PATTERN Muster für den Dateirequester beim Laden eines Bildes

Default: IMAGE PATTERN=#?.image (Nur Dateien mit der Endung .image werden angezeigt)

Diese unterschiedlichen Endungen sind sinnvoll zur Kennzeichnung und Zuordnung der einzelnen Dateien.

DISPLAYID Dieser Eintrag muß vorhanden sein und darf nicht selbst geändert werden

! Der Screenmoderequester speichert hier die DisplayID.

WIDTH Dieser Eintrag muß vorhanden sein und genau vier Ziffern enthalten.

Der Screenmoderequester speichert hier die Bildschirmbreite.

HEIGHT Dieser Eintrag muß vorhanden sein und genau vier Ziffern enthalten.

Der Screenmoderequester speichert hier die Bildschirmhöhe.

DEPTH Legt die Anzahl der Bitplanes für den Screen fest. ’2’ für 4 Farben, ’3’ für 8 Farben und ’4’ für 16 Farben. ’1’ oder Werte größer ’4’ sind nicht erlaubt. Diese Einstellung ist wichtig für die Bilder, die in den Hintergrung gelegt werden sollen. Dieser Eintrag muß vorhanden sein.

COLORS Dieser Eintrag muß vorhanden sein und darf nicht selbst geändert werden ! Der Farbrequester von DataBase speichert hier die Bildschirmfarben. Ist der Eintrag nicht vorhanden, können diese nicht mehr gespeichert werden.

SENSITIVE Festlegung, ob beim Suchen Groß-Kleinschreibung unterschieden werden soll. (SENSITIVE=ON/OFF) Default: SENSITIVE=ON (d.h. Groß-Kleinschreibung wird unterschieden)

ENV Festlegung, ob beim Suchen das Umfeld mit berücksichtigt werden soll. (Z.B. Feldeintrag = ”Datenbank“ und Suchbegriff = ”Daten“. Bei ENV=OFF wird der Suchbegriff nicht gefunden, bei ENV=ON hingegen ja.) Default: ENV=OFF

Ist ein notwendiger Eintrag nicht vorhanden, bricht das Programm mit einer entsprechenden Meldung ab. Weiterhin benötigt das Program einen Stackspeicher (Speicher für rekursive Programmteile). Ich empfehle einen Stack von 50000 Byte. Dies ist ebenfalls im Programmicon einzutragen (für den Aufruf von der Workbench).

Es können nun auf gleiche Weise beliebig viele Felder in die Maske gefügt werden. Die spätere Dateneingabe erfolgt in der Reihenfolge der Eingabe der Felder. Ist die Maske komplett, kann mit RMB^{5} die Maskeneingabe beendet werden. Alle Angaben können jederzeit geändert werden.

2.2.2 Open — Laden einer Datei

Nach einer eventuellen Sicherheitsabfragen kann eine Datei mittels eines Dateirequesters ausgewählt werden. Es werden nur die mit dem DB PATTERN übereinstimmende Dateien angezeigt. Wurde die Datei verschlüsselt abgespeichert, so wird nach dem Passwort gefragt. Auch bei einem falschen Passwort wird die Datei geladen, sie ist jedoch nicht lesbar. (→ Voreinstellungen)

2.2.3 Save — Speichern einer Datei

Exitiert ein Name für die Datei, so wird ohne weitere Meldungen die Datei gespeicht. Eine evtl. verhandene Datei mit gleichem Namen wird überschrieben. Existiert kein Name erscheint ein Dateirequester, in dem nur die mit dem DB PATTERN übereinstimmende Dateien angezeigt werden. Vor dem Abspeichern wird nach einem Passwort gefragt. Soll die Datei unverschüsselt gespeichert werden, ist nur RETURN zu drücken. (→ Voreinstellungen)

2.2.4 Save as — Speichern einer Datei als

Es erscheint immer ein Datierequester, in dem nur die mit dem DB PATTERN übereinstimmende Dateien angezeigt werden. (→ Voreinstellungen) Eine evtl. vorhandene Datei mit gleichem Namen wird ohne Meldung überschrieben. Vor dem Abspeichern wird nach einem Passwort gefragt. Soll die Datei unverschüsselt gespeichert werden, ist nur RETURN zu drücken.

2.2.5 Print — Drucken von Datensätzen

Es erscheint ein Dateirequester, in dem nur die mit dem PRT PATTERN übereinstimmende Dateien angezeigt werden. (→ Voreinstellungen) Dieser Dateirequester dient zur Auswahl einer Druckmaske. Der Ausdruck beginnt direkt anschließend ohne weitere Abfragen. (→ Voreinstellungen – Print device) Ob alle Datenätze oder nur der aktuelle Datensatz gedruckt werden soll, muß vorher in den Voreinstellungen festgelegt werden. (→ Voreinstellungen – Print all)

Druckmasken Format:

• Normale Zeichen werden unverändert ausgegeben

• Feldnamen müssen zwischen ”≪“ (ALT 9) und ”≫“ (ALT 0) angegeben. werden. Die Schreibweise (auch evtl. folgende Leertasten) muß exakt der Schreibweise in der Bildschirmmaske entsprechen. Ist ein Feld nicht vorhanden (oder falsch geschrieben), erscheint statt des Eintrags ein ”UNKOWN“. Soll der Eintrag auf die maximale Eintragslänge mit Leerzeichen aufgefüllt werden, so ist das schließende ”≫“ durch ein ”•“ (ALT 8) zu ersetzen. Dies ist sinnvoll um Verschiebungen zu vermeiden, wenn zwei Felder in einer Zeile stehen (z.B. bei einer Banküberweisung). Mit Hilfe der Funktion Export Mask kann dies vereinfacht werden. Alternativ zum Feldnamen kann ein Feld auch durch eine Nummer referiert werden. Dabei dienen ”≪“ und ”≫“ bzw. ”•“ ebenfalls als Begrenzer. Zur Unterscheidung zwischen Feldnamen und Nummer folgt dem ”≪“ ohne Leerzeichen direkt ein ”$“ und ein ”F“. Nach dem ”F“ steht nun die Nummer des Feldes. Beispiel : ≪$F3≫. In einer Druckmaske können beide Varianten beliebig gemischt werden.

5Right Mouse Button

• Das Zeichen ”@“ (ALT 2) wird durch ESC ersetzt, so daß dem Drucker Steuerbefehle mitgeteilt werden können. Anhang B dieser Anleitung informiert über Standand Sequenzen. (z.B. ”@[3m“ schaltet Kursivschift ein und ”@[23m“ wieder aus)

Beispiel:

Willi Meier, Am Musterweg 1, 2000 Hamburg 1
An
≪Vorname≫ ≪Name≫
≪Straße≫ ≪Nr≫
@[3m≪PLZ•@[23m ≪Ort≫

2.2.6 Sort — Sortieren einer Datei

Die Datei wird nicht immer automatisch sortiert. Dies würde die Datensatzeingabe nur unnötig behindern.

Jede Datei kann nach zwei Schlüsselfeldern sortiert werden. Beide Eingaben sind zwingend. Wird ein zweiten Schlüssel nicht benötigt, so ist er gleich dem ersten zu setzen. (Der zweite Schüssel wird vom Programm vom ersten kopiert, so daß er nicht erneut eingegeben werden muß.)

Sortiert wird nach dem erstem Schlüssel. Sind die Einträge zweier Datensätze in diesem Feld gleich, entscheidet der zweite Schlüssel. (z.B. Es seien zwei Datensatzen mit den Eintrag Müller im Feld Name: vorhanden. Der erste Schlüssel sei auf das Feld Name: gesetzt und somit muß der zweite Schüssel entscheiden, in welcher Reihenfolge die Datensätze sortiert werden sollen. Möglich wäre also den zweiten Schlüssel auf das Feld Vorname: zu setzen.) Wichtig ist die exakte Schreibweise (evtl. folgende Leertasten) der Felder.

Existieren diese Schlüssel, wird sofort sortiert. Eine Änderung der Schlüssel kann über die Menüfunktionen Sort A->Z bzw. Sort Z->A erfolgen.

2.2.7 Search — Suchen eines Eintrags

Es werden alle Felder der Maske nach einen Wort durchsucht. Im Requester stehen ’>’ zur Suche vorwärts vom Anfang an, ’≫’ zur Suche vorwärts ab dem aktuellen Datensatz, ’≪’ zur Suche rückwärts ab dem aktuellen Datensatz und ’<’ zur Suche rückwärts vom Ende an zur Verfügung.

2.3 Funktionen der oberen Gadget-Reihe  DataBase Anleitung 8

Das Eingabewort kann ein ”?“ für genau ein beliebiges Zeichen und ein ”*“ für kein oder beliebig viele Zeichen enthalten. (z.B. das Eingabewort Comm?do?e A*mi* ?000 paßt zu Commodore Amiga 3000) Dieses pattern matching^{6} benötigt Stackspeicher. Sollen Sie eine Fehlermeldung bekommen, erhöhen Sie einfach den Stack. (→ Voreinstellungen)

Wenn ein Suchbegriff existiert, kann mit CTRL ”Cursor up/down“ zum nächsten bzw. vorherigen gesprungen werden. Es wird jeweils angezeigt, in welchem Feld der Suchbegiff befunden wurde.

2.2.8 Prev — Suche weiter rückwärts

Existiert ein Suchbegriff, so wird weiter rückwärts nach diesem gesucht.

2.2.9 Next — Suche weiter vorwärts

Existiert ein Suchbegriff, so wird weiter vorwärts nach diesem gesucht.

2.2.10 Info — Informationen

Angezeigt werden der akuelle Dateiname, die Anzahl der vorhandenen Datensätze, wieviel Bytes diese belegen und für wieviele Datensätze momentan noch Platz wäre. (z.B. File: test.db DataBase: 00003 00014/0012274 Space: 07463 zeigt den aktuellen Dateinamen (test.db), der aktuelle Datensatz ist der dritte von insgesamt 14 Datensätzen, die 12274 Bytes belegen und es wäre noch Platz für 7463 Datensätze im Speicher)

2.2.11 Quit — Programmende

Nach einer evtl. Sicherheitsabfrage wird das Programm verlassen.

2.3 Funktionen der oberen Gadget-Reihe

2.3.1 ”Bewegen in der Datei“

| ≪ — Sprung zum Anfang der Datei Der erste Datensatz wird der akuelle Datensatz. Tastatur: CRTL ”Cursor left“ ←

≪ — Rückwärts im Schrittweiteabstand Der akuelle Datensatz wird um die Schrittweite erniedrigt. (→ Prefs) Tastatur: SHIFT ”Cursor left“ ←

< — Rückwärts zum vorherigen Datensatz Der akuelle Datensatz wird um eins erniedrigt.

6Mustervergleich

Tastatur: ”Cursor left“ ←

> — Vorwärts zum nächsten Datensatz Der akuelle Datensatz wird um eins erhöht. Tastatur: ”Cursor right“ →

≫ — Vorwärts im Schrittweiteabstand Der akuelle Datensatz wird um die Schrittweite erhöht. (→ Prefs) Tastatur: SHIFT ”Cursor right“ →

≫ | — Sprung zum Ende der Datei Der letzte Datensatz wird der akuelle Datensatz. Tastatur: CRTL ”Cursor right“ →

2.3.2 ”Indexsprung“

Wenn die Datei sortiert ist, kann direkt über eine Taste zu dem ersten mit dem Zeichen übereinstimmenden Datensatz gesprungen werden. Als Vergleichkriterium dient der erste Sortierschlüssel. (z.B. Eine Adressendatei wurde nach den Namen sortiert. Nun kann einfach durch ”M“ zu dem ersten Datensatz gesprungen werden, der im Feld Name: mit ”M“ beginnt (z.B. Meier)) Es wird zwischen Groß- und Kleinbuchstaben unterschieden ! ◇ Diese Funktion ist nur über Tastatur möglich.

2.3.3 ”Moduswahlschalter“ — Data, Mask, Image, Prefs

Mit diesem Gadget wird die Funktion für die nächsten vier Gadgets festgelegt. Der jeweilige Modus wird angezeigt. Tastatur: TAB

2.3.4 Modus: Data — Funktionen für die Datensätze

Copy — Kopieren eines Datensatzes Der aktuelle Datensatz wird kopiert und die Kopie ist der neue aktuelle Datensatz.

Edit — Editieren eines Datensatzes Der aktuelle Datensatz kann editiert^{7} werden. Mit ”Cursor down“ ↓ oder RETURN wird zum nächsten Feld gesprungen, mit ”Cursor up“ ↑ zum vorherigen. Oben oder unten aus der Maske ”rauslaufen“ bricht das Editieren ab.

Add — Hinzufügen eines Datensatzes Ein Datensatz wird hinter den aktuellen Datensatz eingefügt.

7verändern

Delete — Löschen eines Datensatzes Der akuelle Datensatz wird nach einer Sicherheitsabfrage gelöscht.

2.3.5 Modus: Mask — Funtionen für die Maske

Font — Maskenschift wählen Über einen Requester kann eine Schrift (Font) für die Feldnamen und Daten ausgewählt werden. Vorsicht! Es erfolgt keine automatische Anpassung der Maske an die neue Schift. (→ New)

Edit — Maskenfeld editieren Ein Feldname, seine maximale Eintragslänge, sein Standardeintrag, seine Koordinaten und sein Vorgänger können verändert werden. Dazu wird das zu veränderne Feld mit der Maus angeklickt. Soll keine Änderung erfolgen, sind die Requester einfach zu canceln.

Die Koordinaten des Feldes werden nicht wie bei der New-Funktion mit der Maus bestimmt, sondern müssen als Zahlenwerte eingegeben werden. Dadurch können z.B. Felder exakt untereinander angeordnet werden.

Als letzte Eingabe erfolgt dann die Eingabe des Vorgängerfeldes, d.h. nach welchem Feld dieses bei der Dateneingabe abgefragt werden soll. Dadurch kann die Abfragereihenfolge geändert werden. Soll die Reihenfolge unverändert bleiben, ist auf eine freie Stelle zu klicken. Ansonsten ist das Vorgängerfeld mit der Maus anzuklicken. (→ New)

Add — Hinzufügen eines Maskenfeldes Die Maske wird um ein neues Feld ergänzt. Dazu muß als erstes der Vorgänger des neues Feldes mit der Maus angeklickt werden, d.h. nach welchem Feld das neue bei der Dateneingabe abgefragt werden soll.

Danach sind wie bei der New-Funktion Feldname, maximale Eintragslänge und Standardeintrag einzugeben. (→ New)

Delete — Löschen eines Maskenfeldes Nach einer Sicherheitsabfrage wird ein Feld wird aus der Maske gelöscht. Dabei gehen alle Einträge in diesem Feld verloren ! Das zu löschende Feld ist mit der Maus anzuklicken.

2.3.6 Modus: Image — Funktionen für das Hintergrundbild

Load — Laden eines Bildes Über einen Dateirequester, in dem nur mit dem IMAGE PATTERN übereinstimmende Dateien angezeigt werden, wird ein Bild ausgewählt. Dieses Bild muß im IFF-Format^{8} vorliegen. Wichtig ist, daß die Anzahl der Bitplanes des DataBase Screens mit der Anzahl der Bitplanes des Bildes übereinstimmt. D.h. die Anzahl der Farben des Bildes darf die die maximale Anzahl der Farben des DataBase Screens nicht unter- oder überschreiten. Die ersten vier Farben des DataBase Screen bleiben unverändert, während alle evtl. weiteren Farben aus dem Bild übernommen werden.

8Amigastandardformat, compressed oder uncompressed kann gelesen werden

2.4 Menüs  DataBase Anleitung 11

Außerdem darf das Bild nicht größer als das zur Verfügung stehende Fenster sein. Dies ist abhängig vom Bildschirmmodus (noninterlaced oder interlaced, evtl. Overscan). (→ Voreinstellungen)

Der Bildname (und Pfad) – aber nicht das Bild selbst – wird mit der Datei gespeichert und beim Laden der Datei automatisch mitgeladen.

Ich empfehle einen Datensatz vollständig mit einem Zeichen zu füllen, ein Snapshot^{9} zu machen und diesen in ein Malprogram zu laden. Dadurch ist eine genaue Positionierung von Text, Grafiken, 3D Boxen, etc. möglich. Zu diesem Zweck befindet sich das PD-Programm ”PictSaver“ auf dieser Diskette.

Sollen Fotos als Hintergrundbild dienen, empfehle ich die Umwandlung in ein Graustufenbild und anschließend eine Farbreduzierung mit einem Dithering-Algorithmus^{10}.

Clear — Löschen des Bildes Das Hintergrundbild wird auf dem Bildschirm gelöscht.

Move — Verschieben des Bildes Das Hintergrundbild kann in dem Fenster durch Angabe der Position der linken oberen Ecke des Bildes positioniert werden. Die Position wird in der Datei gespeichert.

Screen — Bildschirminformationen Es werden Informationen zum Bildschirm ausgegeben. Depth gibt die Anzahl der Bitplanes des Screens an. (→ Voreinstellungen). Width und Height zeigen die maximal zur Verfügung stehende Größe für das Hintergrundbild und Image ist der aktuelle Bildname.

2.4 Menüs

Alle Funktionen der Gadget–Leisten sind auch über Menü zu erreichen. Zusätzlich stehen folgende Funktionen zur Verfügung :

2.4.1 Project (Ergänzungen)

Import SDF — Importieren einer SDF Datei SDF^{11} ist ein Standardformat zur Informationsspeicherung. Es hat folgende Struktur : DatumA1,DatumA2,...,DatumAN DatumB1,DatumB2,...,DatumBN ⋮

Als Delimiter^{12}–Zeichen dient das Komma. Die Daten können wahlweise noch in Anführungszeichen eingeschlossen werden, was zwingend ist, wenn das Datum ein Komma enthält. Beispiel : Heinz,Müller,“040/12345678“ “Otto“,Meier,089/9876543 “Lisa“,“Schmidt, geb. Albers“,0441/69007 Möchte man nun z.B. seine PD-Disketten Sammlung mit DataBase verwalten, kann mit dem Shell–Befehl

9Bildschirmfoto

10Verfahren um dem Auge mehr Farben bzw. Abstufungen vorzutäuschen

11System Data Format

12Begrenzer, Trenner

C:List > T:import.txt DF0:  dirs lformat=“%F,%N,%D“

eine Liste der Verzeichnisse der Diskette in DF0: erzeugt werden. Genau dies macht das mit Icon versehende Skript MakeDiskCatalog. Nähere Informationen zum List Befehl finden Sie im AmigaDOS Handbuch.

Bevor in DataBase diese Daten importiert werden können, muß eine Maske erstellt werden. Diese muß exakt die gleiche Anzahl Felder haben wie die zu importierende Datei ! (Im obrigen Beispiel drei) Die Datei der Maske kann leer sein oder Daten enthalten. Beim Importieren werden die importierten Daten an die Datei angefügt.

Exportieren von Daten im SDF kann über eine entsprechende Druckmaske, Print all und Print device ⇒ File erfolgen.

Export Mask — Exportieren der Druckmaske Von der akutellen Dateimaske wird eine Druckmaske erzeugt und mittels eines Dateirequesters in eine Datei geschrieben. Dabei werden die Feldnamen der Maske in ≪ und ≫ eingeschlosssen und untereinander gespeichert. Diese Datei kann anschließend mit einem Editor in die gewünschte Form gebracht werden, ohne sich um die exakte Schreibweise (Leerzeichen etc.) kümmern zu müessen. (→ Print)

2.4.2 Data (Ergänzungen)

Upper — Umwandlung von Klein- in Großbuchstaben Alle Anfangszeichen der Daten des aktuellen Datensatzes werden in Großbuchstaben geändert.

Upper all — Umwandlung von Klein- in Großbuchstaben Alle Anfangszeichen der Daten aller Datensätze werden in Großbuchstaben geändert.

Filter — Löschen bestimmter Datensätze Nach der Wahl eines Feldes kann ein Mustertext eingegeben werden, der ein ”*“ für beliebig viele Zeichen und ein ”?“ für genau ein Zeichen enthalten darf. Bei Equal werden alle Datensätze gelöscht, die in dem gewählten Feld mit dem Mustertext übereinstimmen, bei Not equal entsprechend alle Felder, die nicht üebereinstimmen. Diese Funktion ist mit großer Vorsicht zu gebrauchen ! Beispiel : Klick auf das Feld ”Name:“, Mustertext “Sch*“ löscht alle Datensätze, in denen der Name mit Sch beginnen. Speichern Sie am Anfang lieber die Daten vorher ab, bis Sie mit der Funktion vertraut sind. Die Einstellung Case sensitive wird beim Filtern berücksichtigt.

2.4.3 Mask (Ergänzungen)

Field visibility — Daten sichtbar/unsichtbar Die Daten eines Feldes Können unsichtbar bzw. wieder sichtbar gemacht werden. Dies kann wünschenswert sein, falls ein Fremder mit auf dem Bildschirm guckt und ihm einige verborgen bleiben sollen. Beim Speichern bleibt die jeweilige Einstellung erhalten. Feldattribute Seit der Version 2.3 können Name, Länge, Standardeintrag, Position eines Feldes und die Reihenfolge einzeln verändert werden. Edit all entspricht dem alten Edit field und dabei werden alle Attribute nacheinander abgefragt.

2.4.4 Preferences — Voreinstellungen

Skip value — Festlegen der Schrittweite Um eine schnelle Bewegung innerhalb einer umfangreichen Datei zu ermöglichen, kann in einer Schrittweite zwischen den Datensätzen gesprungen werden. Diese Schrittweite muß zwischen 1 und 999 liegen. (→ ≪, ≫)

Case sensitive — Unterscheiden von Groß-Kleinschreibung Beim Suchen kann wahlweise zwischen Groß- und Kleinschreibung unterschieden werden. Der momentane Zustand wird angezeigt (case sensitive entspricht einer Unterscheidung, case insensitive entspricht keiner Unterscheidung von Groß-Kleinschreibung). Dies kann im ToolType voreingestellt werden. (→ Voreinstellungen, Search)

Search environment — Suchen im Umfeld Beim Suchen kann nur nach Feldeinträgen gesucht werden, die genau dem Suchbegriff entsprechen oder der Suchbegriff kann auch ein Teilwort eines Feldeintrages sein. Die Suche nur genau nach dem Feldeintrag geht schneller. In beiden Fällen werden alle Felder durchsucht. (→ Voreinstellungen)

Print device — Festlegen der Ausgabeschnittstelle Die Druckausgabe kann wahlweise auf dem Drucker, dem Bildschirm oder in eine Datei erfolgen. Das jeweils aktive Device steht im Requester und kann editiert werden. Vordefiniert sind bereits PRT: und CON:0/0/640/200/Preview/WAIT/CLOSE/SCREENDataBase unter den Gadgets Printer bzw. Screen zur Ausgabe auf dem Drucker bzw. Bildschirm. Das File Gadget erleichtert die Auswahl einer Datei, in welche die Druckausgaben geleitet werden sollen. Nach dem Programmstart ist standardmäßig PRT: eingestellt.

Print all — Aktuellen oder alle Datensätze drucken Bei Aktivierung werden statt dem aktuellen alle Datensätze der Datei gedruckt.

Color palette — Festlegen der Bildschirmfarben Mittels eines Farbrequesters können die Bildschirmfarben eingestellt werden.

Save colors — Speichern der Bildschirmfarben Die momentanen Bildschirmfarben werden gesichert. Dazu ist zwingend der Eintrag COLORS

2.5 Ausblick  DataBase Anleitung 14

in den ToolTypes nötig. (→ Voreinstellungen)

Screenmode — Auswählen des Bildschirmmodus Mittels eines Requesters kann der Bildschirmmodus, die Overscangröße und die Anzahl der Farben festgelegt werden. Diese Einstellungen werden automatisch in das Programmicon eingetragen und werden somit beim nächsten Programmaufruf aktiv. Falls aus Versehen ein falscher Modus gewählt wurde und dieser Modus auf dem Monitor nicht dargestellt werden kann, ist in den ToolTypes DISPLAY=0167936 für PAL:High Res einzutragen. (→ Voreinstellungen)

2.5 Ausblick

Ein Programm dieser Gattung ist sicherlich nie fertig programmiert, und ich werde das Programm auch in Zukunft weiter entwickeln. Im Besonderen denke ich dabei an Markierungsfunktionen, wodurch nur bestimmte Datensätze gedruckt, gespeichert, angezeigt, gelöscht, etc. werden können.

Vielen Dank an Rudolf Schwarzbach für seine Ideen, Kritik und das β-Testen.

Jörg Richter, 22. Febuar 1993

Mathematische Formeln  DataBase Anleitung 15

A Mathematische Formeln

Im Standardeintrag (default entry) können mathematische Formeln zur Berechnung von Werten aus anderen Feldern gesetzt werden. Steht im Standardeintrag eine Formel, so wird dieses Feld bei der Dateneingabe bzw. –änderung übersprungen und anschließend automatisch berechnet. Wird die Formel geändert, werden alle Datensätze neu berechnet. Dies kann einen kleinen Moment dauern, was jedoch den Vorteil hat, daß beim Durchblättern, Suchen, etc. keine Verzögerung entsteht. Ebenfalls wird beim Importieren von Daten automatisch ein vorhandene Formel angewandt.

Formelformat : $n=Formel wobei

• $ zeigt an, daß der Standardeintrag eine Formel ist.

• n ist die Anzahl der Nachkommastellen des Ergebnisses. (n ≥ 0)

• = nach dem Gleichheitszeichen folgt die eigentliche Formel.

• Formel ist die eigentliche mathematische Formel.

Aufbau der mathematischen Formel :

• Zahlen (positive und negative) werden unverändert eingegeben und können Ganzzahlen oder Fließkommazahlen sein. Bei Fließkommazahlen ist der Punkt ”.“ zu verwenden.

• Felddaten können durch die Feldnummer referiert werden. In der Formel muß dazu erst ein ”F“ direkt gefolgt von der Nummer stehen. Die Felder sind in der Abfragereihenfolge durchnummeriert.

• Als Operatoren stehen +, −, ∗, / zur Verfügung.

• Die Formel wird von links nach rechts ausgewertet. Deshalb müssen Ausdrücke gegebenenfalls geklammert werden.

• Zwischen den Zahlen, Feldern und Operatoren können beliebig viele Leerzeichen stehen.

Beispiele : $0=F1+F2 addiert den Inhalt von Feld1 mit dem Inhalt von Feld2 und das Ergebnis

ist eine Ganzzahl

$2=F12∗1.15 multipliziert dan Inhalt von Feld15 mit 1.15 und das Ergebnis hat zwei

Nachkommastellen

$1=(10+F5-3)/2 ⋯
$0=(5∗(F6/(-2))) es ist eine beliege Schachtelungstiefe erlaubt

Aber Achtung !

$2=F1+F2∗2  rechnet (F1+F2)∗2, also muß geklammert werden
$2=F1+(F2∗2)  rechnet F2∗2 und addiert F1 dazu

Texteingabefunktionen  DataBase Anleitung 16

B Texteingabefunktionen

Tastatur  Erklärung

DEL löscht das Zeichen, das durch den Cursor

markiert ist

Rücktaste  löscht das Zeichen links vom Cursor
rechte Amiga & X  löscht den gesamten Text

rechte Amiga & Q stellt den Text wieder her, der zuvor

geändert bzw. gelöscht wurde

rechte Amiga & C  kopiert den Text in einen Buffer
rechte Amiga & V  fügt den Text aus dem Buffer ein

SHIFT & Cursor links stellt den Cursor an den Anfang des

Textes

SHIFT & Cursor rechts stellt den Cursor an das Ende des Textes

SHIFT & DEL löscht das durch den Cursor markierte Ze-

ichen sowie alle Zeichen rechts vom Cursor

SHIFT & Rücktaste  löscht alle Zeichen links vom Cursor

Das Kopieren und Einfügen von Text ist bei allen Texteingaben – auch über Datensätze hinweg – möglich. Falls der Buffertext länger als die maximale momentane Textlänge ist, wird der Rest abgeschnitten.

Druckersteuerbefehle  DataBase Anleitung 17

C Druckersteuerbefehle

ESCc reset ESC#1 initialize ESCD lf ESCE return,lf ESCM reverse lf

ESC[0m normal char set ESC[3m italics on ESC[23m italics off ESC[4m underline on ESC[24m underline off ESC[1m boldface on ESC[22m boldface off

ESC[0w normal pitch ESC[2w elite on ESC[1w elite off ESC[4w condensed fine on ESC[3w condensed off ESC[6w enlarged on ESC[5w enlarged off

ESC[6“z shadow print on ESC[5“z shadow print off ESC[4“z doublestrike on ESC[3“z doublestrike off ESC[2“z NLQ on ESC[1“z NLQ off

ESC[2v superscript on ESC[1v superscript off ESC[4v subscript on ESC[3v subscript off ESC[0v normalize the line ESCL partial line up ESCK partial line down

ESC(B US char set ESC(R French char set ESC(K German char set ESC(A UK char set ESC(E Danish I char set ESC(H Sweden char set ESC(Y Italian char set ESC(Z Spanish char set ESC(J Japanese char set ESC(6 Norweign char set ESC(C Danish II char set

ESC[2p proportional on ESC[1p proportional off ESC[0p proportional clear ESC[n E set proportional offset ESC[5 F auto left justify ESC[7 F auto right justify ESC[6 F auto full justify ESC[0 F auto justify off ESC[3 F letter space (justify) ESC[1 F word fill(auto center)

ESC[0z 1/8line spacing ESC[1z 1/6line spacing ESC[nt set form length n

ESC[nq perf skip n (n>0)

ESC[0q perf skip off

ESC#9 Left margin set ESC#0 Right margin set ESC#8 Top margin set ESC#2 Bottom marg set ESC[Pn1;Pn2r T&B margins ESC[Pn1;Pn2s L&R margin ESC#3 Clear margins

ESCH Set horiz tab ESCJ Set vertical tabs ESC[0g Clr horiz tab ESC[3g Clear all h tab ESC[1g Clr vertical tabs ESC[4g Clr all v tabs ESC#4 Clr all h & v tabs ESC#5 Set default tabs ESC[Pn“x extended commands ESC[Pn“r next Pn chars are raw